package com.kgc.bean;

import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderInfo implements Serializable {
    private static final long serialVersionUID = 5579543536108472457L;
    @ApiModelProperty(value = "订单编号")
    private String orderId;

    @ApiModelProperty(value = "原来总价")
    private Integer orderPayment;

    @ApiModelProperty(value = "支付方式",notes = "1、支付宝2、微信")
    private Integer orderPaymentType;

    @ApiModelProperty(value = "邮费")
    private Integer orderPostFee;

    @ApiModelProperty(value = "订单状态",notes = "1、未付款，2、已付款，就是未发货，3、已发货，4、确认收货交易成功，5、交易关闭,不可再付款相当于订单作废")
    private Integer orderStatus;

    @ApiModelProperty(value = "订单显示状态",notes = "订单操纵默认0正常 1用户不显示")
    private Integer orderState;

    @ApiModelProperty(value = "下单时间")
    private Date orderCreateTime;

    @ApiModelProperty(value = "订单状态更新时间")
    private Date orderUpdateTime;

    @ApiModelProperty(value = "支付时间")
    private Date orderPaymentTime;

    @ApiModelProperty(value = "物流信息用户的配送信息json存储")
    private String orderLogisticsInfo;

    @ApiModelProperty(value = "发货时间")
    private Date orderConsignTime;

    @ApiModelProperty(value = "卖家收货时间")
    private Date orderReciverTime;

    @ApiModelProperty(value = "物流编号")
    private String orderLogisticsCode;

    @ApiModelProperty(value = "运送公司")
    private String orderLogisticsName;

    @ApiModelProperty(value = "用户编号")
    private Integer userId;

    @ApiModelProperty(value = "买家留言")
    private String buyerMessage;

    @ApiModelProperty(value = "优惠券id")
    private Integer discountTrckId;

    @ApiModelProperty(value = "优惠金额")
    private Integer discountTrickMoney;

    @ApiModelProperty(value = "vip折扣",notes = "vip用户优惠的折扣，先打折，后用红包，8折存8")
    private Byte discountVipDicount;

    @ApiModelProperty(value = "总共优惠金额",notes = "商单总价-原价")
    private Integer discountAll;

    @ApiModelProperty(value = "最终支付金额")
    private Integer lastPaymentPrice;

    @ApiModelProperty(value = "商户id")
    private Integer shopId;

    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId == null ? null : orderId.trim();
    }

    public Integer getOrderPayment() {
        return orderPayment;
    }

    public void setOrderPayment(Integer orderPayment) {
        this.orderPayment = orderPayment;
    }

    public Integer getOrderPaymentType() {
        return orderPaymentType;
    }

    public void setOrderPaymentType(Integer orderPaymentType) {
        this.orderPaymentType = orderPaymentType;
    }

    public Integer getOrderPostFee() {
        return orderPostFee;
    }

    public void setOrderPostFee(Integer orderPostFee) {
        this.orderPostFee = orderPostFee;
    }

    public Integer getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(Integer orderStatus) {
        this.orderStatus = orderStatus;
    }

    public Integer getOrderState() {
        return orderState;
    }

    public void setOrderState(Integer orderState) {
        this.orderState = orderState;
    }

    public Date getOrderCreateTime() {
        return orderCreateTime;
    }

    public void setOrderCreateTime(Date orderCreateTime) {
        this.orderCreateTime = orderCreateTime;
    }

    public Date getOrderUpdateTime() {
        return orderUpdateTime;
    }

    public void setOrderUpdateTime(Date orderUpdateTime) {
        this.orderUpdateTime = orderUpdateTime;
    }

    public Date getOrderPaymentTime() {
        return orderPaymentTime;
    }

    public void setOrderPaymentTime(Date orderPaymentTime) {
        this.orderPaymentTime = orderPaymentTime;
    }

    public String getOrderLogisticsInfo() {
        return orderLogisticsInfo;
    }

    public void setOrderLogisticsInfo(String orderLogisticsInfo) {
        this.orderLogisticsInfo = orderLogisticsInfo == null ? null : orderLogisticsInfo.trim();
    }

    public Date getOrderConsignTime() {
        return orderConsignTime;
    }

    public void setOrderConsignTime(Date orderConsignTime) {
        this.orderConsignTime = orderConsignTime;
    }

    public Date getOrderReciverTime() {
        return orderReciverTime;
    }

    public void setOrderReciverTime(Date orderReciverTime) {
        this.orderReciverTime = orderReciverTime;
    }

    public String getOrderLogisticsCode() {
        return orderLogisticsCode;
    }

    public void setOrderLogisticsCode(String orderLogisticsCode) {
        this.orderLogisticsCode = orderLogisticsCode == null ? null : orderLogisticsCode.trim();
    }

    public String getOrderLogisticsName() {
        return orderLogisticsName;
    }

    public void setOrderLogisticsName(String orderLogisticsName) {
        this.orderLogisticsName = orderLogisticsName == null ? null : orderLogisticsName.trim();
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public String getBuyerMessage() {
        return buyerMessage;
    }

    public void setBuyerMessage(String buyerMessage) {
        this.buyerMessage = buyerMessage == null ? null : buyerMessage.trim();
    }

    public Integer getDiscountTrckId() {
        return discountTrckId;
    }

    public void setDiscountTrckId(Integer discountTrckId) {
        this.discountTrckId = discountTrckId;
    }

    public Integer getDiscountTrickMoney() {
        return discountTrickMoney;
    }

    public void setDiscountTrickMoney(Integer discountTrickMoney) {
        this.discountTrickMoney = discountTrickMoney;
    }

    public Byte getDiscountVipDicount() {
        return discountVipDicount;
    }

    public void setDiscountVipDicount(Byte discountVipDicount) {
        this.discountVipDicount = discountVipDicount;
    }

    public Integer getDiscountAll() {
        return discountAll;
    }

    public void setDiscountAll(Integer discountAll) {
        this.discountAll = discountAll;
    }

    public Integer getLastPaymentPrice() {
        return lastPaymentPrice;
    }

    public void setLastPaymentPrice(Integer lastPaymentPrice) {
        this.lastPaymentPrice = lastPaymentPrice;
    }

    public Integer getShopId() {
        return shopId;
    }

    public void setShopId(Integer shopId) {
        this.shopId = shopId;
    }
}